Serveur d'exploration sur Aussois

Attention, ce site est en cours de développement !
Attention, site généré par des moyens informatiques à partir de corpus bruts.
Les informations ne sont donc pas validées.

POET: a scripting language for applying parameterized source‐to‐source program transformations

Identifieur interne : 000014 ( Main/Exploration ); précédent : 000013; suivant : 000015

POET: a scripting language for applying parameterized source‐to‐source program transformations

Auteurs : Qing Yi [États-Unis]

Source :

RBID : ISTEX:0171B4795F37BB4F726DEC2DE3D1A9A304EDFE3D

English descriptors

Abstract

We present POET, a scripting language designed for applying advanced program transformations to code in arbitrary programming languages as well as building ad hoc translators between these languages. We have used POET to support a large number of compiler optimizations, including loop interchange, parallelization, blocking, fusion/fission, strength reduction, scalar replacement, SSE vectorization, among others, and to fully support the code generation of several domain‐specific languages, including automatic tester/timer generation, and automatically translating a finite‐state‐machine‐based behavior modeling language into C++/ Java code. This paper presents key design and implementation decisions of the POET language and show how to use various language features to significantly reduce the difficulty of supporting programmable compiler optimization for high performance computing and supporting ad hoc code generation for various domain‐specific languages. Copyright © 2011 John Wiley & Sons, Ltd.

Url:
DOI: 10.1002/spe.1089


Affiliations:


Links toward previous steps (curation, corpus...)


Le document en format XML

<record>
<TEI wicri:istexFullTextTei="biblStruct">
<teiHeader>
<fileDesc>
<titleStmt>
<title xml:lang="en">POET: a scripting language for applying parameterized source‐to‐source program transformations</title>
<author>
<name sortKey="Yi, Qing" sort="Yi, Qing" uniqKey="Yi Q" first="Qing" last="Yi">Qing Yi</name>
</author>
</titleStmt>
<publicationStmt>
<idno type="wicri:source">ISTEX</idno>
<idno type="RBID">ISTEX:0171B4795F37BB4F726DEC2DE3D1A9A304EDFE3D</idno>
<date when="2012" year="2012">2012</date>
<idno type="doi">10.1002/spe.1089</idno>
<idno type="url">https://api.istex.fr/document/0171B4795F37BB4F726DEC2DE3D1A9A304EDFE3D/fulltext/pdf</idno>
<idno type="wicri:Area/Main/Corpus">000D88</idno>
<idno type="wicri:explorRef" wicri:stream="Main" wicri:step="Corpus" wicri:corpus="ISTEX">000D88</idno>
<idno type="wicri:Area/Main/Curation">000D88</idno>
<idno type="wicri:Area/Main/Exploration">000014</idno>
<idno type="wicri:explorRef" wicri:stream="Main" wicri:step="Exploration">000014</idno>
</publicationStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title level="a" type="main" xml:lang="en">POET: a scripting language for applying parameterized source‐to‐source program transformations</title>
<author>
<name sortKey="Yi, Qing" sort="Yi, Qing" uniqKey="Yi Q" first="Qing" last="Yi">Qing Yi</name>
<affiliation wicri:level="2">
<country xml:lang="fr">États-Unis</country>
<wicri:regionArea>University of Texas at San Antonio, San Antonio, TX</wicri:regionArea>
<placeName>
<region type="state">Texas</region>
</placeName>
</affiliation>
</author>
</analytic>
<monogr></monogr>
<series>
<title level="j">Software: Practice and Experience</title>
<title level="j" type="abbrev">Prog. Softw. Pract. Exper.</title>
<idno type="ISSN">0038-0644</idno>
<idno type="eISSN">1097-024X</idno>
<imprint>
<publisher>John Wiley & Sons, Ltd</publisher>
<pubPlace>Chichester, UK</pubPlace>
<date type="published" when="2012-06">2012-06</date>
<biblScope unit="volume">42</biblScope>
<biblScope unit="issue">6</biblScope>
<biblScope unit="page" from="675">675</biblScope>
<biblScope unit="page" to="706">706</biblScope>
</imprint>
<idno type="ISSN">0038-0644</idno>
</series>
<idno type="istex">0171B4795F37BB4F726DEC2DE3D1A9A304EDFE3D</idno>
<idno type="DOI">10.1002/spe.1089</idno>
<idno type="ArticleID">SPE1089</idno>
</biblStruct>
</sourceDesc>
<seriesStmt>
<idno type="ISSN">0038-0644</idno>
</seriesStmt>
</fileDesc>
<profileDesc>
<textClass>
<keywords scheme="KwdEn" xml:lang="en">
<term>compiler optimization</term>
<term>source‐to‐source translators</term>
<term>transformation language</term>
</keywords>
</textClass>
<langUsage>
<language ident="en">en</language>
</langUsage>
</profileDesc>
</teiHeader>
<front>
<div type="abstract" xml:lang="en">We present POET, a scripting language designed for applying advanced program transformations to code in arbitrary programming languages as well as building ad hoc translators between these languages. We have used POET to support a large number of compiler optimizations, including loop interchange, parallelization, blocking, fusion/fission, strength reduction, scalar replacement, SSE vectorization, among others, and to fully support the code generation of several domain‐specific languages, including automatic tester/timer generation, and automatically translating a finite‐state‐machine‐based behavior modeling language into C++/ Java code. This paper presents key design and implementation decisions of the POET language and show how to use various language features to significantly reduce the difficulty of supporting programmable compiler optimization for high performance computing and supporting ad hoc code generation for various domain‐specific languages. Copyright © 2011 John Wiley & Sons, Ltd.</div>
</front>
</TEI>
<affiliations>
<list>
<country>
<li>États-Unis</li>
</country>
<region>
<li>Texas</li>
</region>
</list>
<tree>
<country name="États-Unis">
<region name="Texas">
<name sortKey="Yi, Qing" sort="Yi, Qing" uniqKey="Yi Q" first="Qing" last="Yi">Qing Yi</name>
</region>
</country>
</tree>
</affiliations>
</record>

Pour manipuler ce document sous Unix (Dilib)

EXPLOR_STEP=$WICRI_ROOT/Wicri/France/explor/AussoisV1/Data/Main/Exploration
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 000014 | SxmlIndent | more

Ou

HfdSelect -h $EXPLOR_AREA/Data/Main/Exploration/biblio.hfd -nk 000014 | SxmlIndent | more

Pour mettre un lien sur cette page dans le réseau Wicri

{{Explor lien
   |wiki=    Wicri/France
   |area=    AussoisV1
   |flux=    Main
   |étape=   Exploration
   |type=    RBID
   |clé=     ISTEX:0171B4795F37BB4F726DEC2DE3D1A9A304EDFE3D
   |texte=   POET: a scripting language for applying parameterized source‐to‐source program transformations
}}

Wicri

This area was generated with Dilib version V0.6.29.
Data generation: Sun Apr 16 19:50:37 2017. Site generation: Mon Feb 12 14:44:36 2024